package com.example.sfm.pojo.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDate;

@EqualsAndHashCode(callSuper = true)
@Data
@Schema(name = "成绩查询对象",description = "用于封装成绩查询参数")
public class GradesQueryDto extends CommonPage {
    @Schema(description = "学生ID")
    private Integer studentId;

    @Schema(description = "学生姓名")
    private String fullName;

    @Schema(description = "课程ID")
    private Integer courseId;

    @Schema(description = "成绩等级（0-3）")
    private Integer grade;

    @Schema(description = "考试开始日期（格式：yyyy-MM-dd）")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate examDateStart;

    @Schema(description = "考试结束日期（格式：yyyy-MM-dd）")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate examDateEnd;

    @Schema(description = "学期")
    private String semester;
}
